Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Bus (Datenverarbeitung)</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Bus_(Datenverarbeitung)"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Bus_Datenverarbeitung rootpage-Bus_Datenverarbeitung skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Bus (Datenverarbeitung)</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr">
<p>Ein <b>Bus</b> ist ein System zur <a href="Daten%C3%BCbertragung" title="Datenübertragung">Datenübertragung</a> zwischen mehreren <a href="Teilnehmer_(Kommunikationssystem)" title="Teilnehmer (Kommunikationssystem)">Teilnehmern</a> über einen <a href="Shared_Medium" class="mw-redirect" title="Shared Medium">gemeinsamen Übertragungsweg</a>. Findet eine momentane Datenübertragung zwischen zwei Teilnehmern statt, so müssen die übrigen Teilnehmer zur selben Zeit schweigen, da sie sonst stören würden.<sup id="cite_ref-IEV_351-32-10_1-0" class="reference"><a href="#cite_note-IEV_351-32-10-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> Die Zeit der Sprechberechtigung wird nach einem allen Teilnehmern bekannten (Zeit- oder Signal-)Schema verteilt. Das Zuhören ist nicht eingeschränkt. Umgangssprachlich werden mitunter&nbsp;– oft aus historischen Gründen&nbsp;– auch Datenübertragungssysteme als „Bus“ bezeichnet, die technisch eigentlich eine andere <a href="Topologie_(Rechnernetz)" title="Topologie (Rechnernetz)">Topologie</a> besitzen.
</p>

<div class="mw-heading mw-heading2"><h2 id="Etymologie">Etymologie</h2></div>
<p>Für Herkunft und ursprüngliche Bedeutung des Wortes „Bus“ gibt es verschiedene Erklärungen.
</p>
<ul><li>Eine Deutung des Begriffs stützt sich mangels schriftlicher Quellen auf die Erinnerung von Ingenieuren, die in den 1970er Jahren und früher mit BUS-Systemen befasst waren. Der Begriff stamme demnach aus der in Schaltplänen verwendeten Abkürzung „BU“ für <i><b>B</b>ack (mounted) Panel <b>U</b>nit</i>, womit man in <a href="Rack" title="Rack">19-Zoll-Racks</a> eine Komponente bezeichnet, die an die Rückwand des Einschubs montiert ist. BUS bezeichne dann entsprechend <i><b>B</b>ack Panel <b>U</b>nit <b>S</b>ockets</i> für an die Rückwand montierte Steckplätze. Entsprechend leite sich auch der englische Begriff <i>busbar</i> ab, was so viel wie Sammelschiene bedeutet.</li></ul>
<ul><li>Gelegentlich wird für die Begriffsherkunft ein Zusammenhang mit dem <a href="Omnibus" title="Omnibus">Omnibus</a> vermutet.</li></ul>
<ul><li>Teilweise wurden auch Theorien über <a href="Backronym" title="Backronym">Backronyme</a> geäußert. Die Abkürzung Bus stehe demnach für <i>Binary Unit System</i>.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Grundbegriffe">Grundbegriffe</h2></div>
<p>Frühere Busse waren tatsächlich nur parallele Stromschienen mit mehreren Anschlüssen. Aus dieser Zeit (ab 1898) stammen die englischen Bezeichnungen <i>omnibus bar</i> und abgekürzt <i>bus bar</i> für solche Sammelschienen (power rail). Üblich ist die Bezeichnung <i>Bus</i> für Sammelschienen bei den elektrischen Anlagen von Flugzeugen bis heute, wobei man vor allem zwischen AC-Bus (Wechselspannung) und DC-Bus unterscheidet. Diese Bezeichnung wurde wohl für Daten-Sammelleitungen (Datenbusse) übernommen, die Informationen an die angeschlossenen Teilnehmer weitergeben.
</p><p>An den Signaladern, auf denen (ggf. synchronisiert) Informationen übertragen werden können, können mehrere kommunizierende Komponenten angeschlossen sein. Die an einem Bus angeschlossenen Komponenten werden auch als <i>Knoten</i> oder <i>Busteilnehmer</i> bezeichnet.
</p>
<div class="mw-heading mw-heading3"><h3 id="Parallel_und_seriell">Parallel und seriell</h3></div>
<p>Es lassen sich grundsätzlich <i>parallele</i> von <i>seriellen</i> Bussen unterscheiden:
</p><p>Bei einem seriellen Bus wird die zu übertragende Information in ihre kleinsten Einheiten (z.&nbsp;B. einzelne <a href="Bit" title="Bit">Bit</a>) aufgeteilt. Diese werden über nur eine Signalleitung nacheinander gesendet.
</p><p>Bei einem parallelen Bus gibt es mehrere Signalleitungen, z.&nbsp;B. 8, sodass immer ein Informationspaket (hier z.&nbsp;B. 1 <a href="Byte" title="Byte">Byte</a>) gleichzeitig gesendet werden kann. Die Signalleitungen müssen im selben Takt bleiben und gleich lange Signallaufzeiten besitzen; durch ihren gemeinsamen Verlauf droht <a href="%C3%9Cbersprechen" title="Übersprechen">Übersprechen</a>.
</p><p>Ein paralleler Bus besteht im Wesentlichen aus einer Anzahl nebeneinander verlaufender Signaladern, auf denen synchronisiert Informationen übertragen werden können und an denen mehrere Komponenten angeschlossen sind. Die Anzahl der nebeneinander verlaufenden Leitungen nennt man auch <i>Breite</i> des Busses – sie ist im Allgemeinen gleich der Anzahl der Bits, die ein Bus gleichzeitig übertragen kann.
</p>
<div class="mw-heading mw-heading3"><h3 id="Master_und_Slave,_Initiator_und_Target"><span id="Master_und_Slave.2C_Initiator_und_Target"></span>Master und Slave, Initiator und Target</h3></div>
<p>Knoten, die selbständig einen Kommunikationsablauf auf dem Bus initiieren dürfen (unaufgefordert Daten an andere Knoten senden), bezeichnet man als aktive Knoten oder <i>Master</i>, die anderen Knoten sind passive Knoten, auch <i>Slave</i> genannt – solche Knoten dürfen nur auf Anfragen antworten.
</p><p>Ein Bus, der mehrere Master-Knoten erlaubt, heißt <i>Multimaster-Bus</i>. Bei einem Multimaster-Bus ist eine <i>zentrale</i> oder <i>dezentrale</i> Busvermittlung notwendig, die gewährleistet, dass zu jedem Zeitpunkt jeweils nur ein Master die Bus-Herrschaft besitzt. Dies ist notwendig, da durch gleichzeitige schreibende Zugriffe auf den Bus nicht nur Daten verloren gehen können, sondern auch die Hardware beschädigt werden könnte. Bei einer zentralen Busvermittlung wird der Buszugriff von einer speziellen Komponente gesteuert, die <i>Bus-<a href="Arbiter" title="Arbiter">Arbiter</a></i> genannt wird. Derjenige Knoten, der einen Zugriff auf den Bus initiiert, heißt <i>Initiator</i>, das Ziel eines solchen (lesenden oder schreibenden) Zugriffes heißt <i>Target</i>.
Manche Busse bieten für die Slave-Knoten eine gesonderte Signalleitung, auf der ein Slave dem Master ein Signal-Bit senden kann, dass ein Slave abgefragt werden möchte.
</p>
<div class="mw-heading mw-heading3"><h3 id="Verwendungsart">Verwendungsart</h3></div>
<p>Je nach Verwendungsart unterscheidet man <i><a href="Systembus" title="Systembus">Systembusse</a></i>, <i>Speicherbusse</i>, <i>Peripheriebusse</i> und <i>Ein-/Ausgabebusse</i>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Bus-Strukturen">Bus-Strukturen</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Signalreflexion_und_Terminierung"><span id="Topologie_und_Terminierung"></span>Signalreflexion und Terminierung</h3></div>
<p>Ob etwas funktionell/signaltechnisch ein Bus ist, hängt nicht zwingend von der <a href="Topologie_(Rechnernetz)" title="Topologie (Rechnernetz)">physischen Topologie</a> ab.<sup id="cite_ref-IEV_351-32-10_1-1" class="reference"><a href="#cite_note-IEV_351-32-10-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</p><p>Da auf Bussystemen oft sehr hochfrequente elektrische Signale übertragen werden, können an Verzweigungen und Enden des Übertragungsmediums auftretende Reflexionen nicht vernachlässigt werden; sie können zur Auslöschung der Signale durch <a href="Interferenz_(Physik)" title="Interferenz (Physik)">Interferenz</a> an bestimmten Stellen und damit zur Fehlfunktion des gesamten Systems führen. Deshalb ist ein im Wesentlichen eindimensionaler elektrischer Leiter als Übertragungsmedium signaltechnisch günstig und am häufigsten anzutreffen (Beispiel <a href="Small_Computer_System_Interface" title="Small Computer System Interface">SCSI</a>). Hier lassen sich Reflexionen an den Leitungsenden durch Terminierung einfach verhindern.
Terminierung durch einen einfachen <a href="Eingangswiderstand" title="Eingangswiderstand">Abschlusswiderstand</a> verursacht eine hohe Verlustleistung, ein alternatives <a href="RC-Glied" title="RC-Glied">RC-Glied</a> verursacht einen schwankenden Ruhepegel. Aufwendiger ist die aktive Terminierung, die den Ruhepegel durch einen Spannungsregler vorgibt.
</p>
<div class="mw-heading mw-heading3"><h3 id="Multiplexing">Multiplexing</h3></div>
<p>Da Adress- und Datenbusse auf einer <a href="Leiterplatte" title="Leiterplatte">Leiterplatte</a> eine große Anzahl gleichartiger Leiterbahnen benötigen, verbraucht dies einerseits viel Platz und benötigt entsprechend viele <a href="Steckverbinder" title="Steckverbinder">Pins</a> an den Bausteinen, andererseits kann das auch elektrische Probleme wie <a href="%C3%9Cbersprechen" title="Übersprechen">Übersprechen</a> vergrößern. Deshalb gibt es als eine Lösung den Ansatz, diese Anzahl zu halbieren, indem man die Information in zwei Hälften aufteilt: die höherwertigen Bits und die niederwertigen. Diese beiden Gruppen sendet man nacheinander in zwei <i>Busphasen</i>: in einer sendet man die eine Hälfte und in einer anderen die andere Hälfte der Signale über dieselben Leitungen (<a href="Multiplexbus" title="Multiplexbus">Multiplexbus</a>). Ein zusätzlicher Steuerpin muss dann diese Busphasen kennzeichnen. Es handelt sich also um ein <a href="Multiplexverfahren" title="Multiplexverfahren">Zeitmultiplex-Verfahren</a>. Das wurde in der Praxis z.&nbsp;B. beim Adressbus des <a href="Intel_8080" title="Intel 8080">8080</a>-Prozessors so gemacht, und bei dynamischen RAMs (<a href="Dynamic_Random_Access_Memory" title="Dynamic Random Access Memory">DRAMs</a>) führt das zu den <a href="Speichermodul#Timing" title="Speichermodul">RAS- und CAS-Zyklen</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Bus_als_Teil_des_Computers">Bus als Teil des Computers</h2></div>
<p>In der Computerarchitektur ist ein Bus ein Untersystem, das <a href="Daten" title="Daten">Daten</a> oder Energie zwischen Computerbestandteilen innerhalb eines <a href="Computer" title="Computer">Computers</a> oder zwischen verschiedenen Computern überträgt. Anders als bei einem Anschluss, bei dem <i>ein</i> Gerät mit <i>einem</i> anderen über eine oder mehrere Leitungen verbunden ist (<a href="Direktverbindung" title="Direktverbindung">Point-to-Point-Verbindung</a>), kann ein Bus <i>mehrere</i> <a href="Peripherieger%C3%A4t" title="Peripheriegerät">Peripheriegeräte</a> über den gleichen Satz von Leitungen miteinander verbinden.
</p><p>Moderne Computerbusse können sowohl parallel, als auch bit-seriell verwendet werden. Während bei der eigentlichen <a href="Rechnernetz" title="Rechnernetz">Netz-Topologie</a> der klassischen Bus-Leitung alle Teilnehmer nebeneinander am Bus hängen, können durch geeignete Kontaktierungen Knoten in einer kettenförmigen Anordnung hintereinander geschaltet werden. Neben der Netzwerktopologie auf der physikalischen Ebene kann ein busähnliches Verhalten auch durch entsprechende Implementierungen nachgebildet werden (vgl. höhere Übertragungsebenen im <a href="OSI-Modell" title="OSI-Modell">OSI-Modell</a>).
</p><p>Die meisten Computer haben interne und externe Busse. Ein interner Bus schließt interne Bestandteile eines Computers an die <a href="Hauptplatine" title="Hauptplatine">Hauptplatine</a> an, beispielsweise die Verbindung zwischen <a href="Prozessor" title="Prozessor">CPU</a> und dem Arbeitsspeicher. Ein solcher interner Bus wird auch als lokaler Bus bezeichnet, weil er dafür gedacht ist, im Computer selbst vorhandene Geräte zu verbinden, und nicht mit solchen in anderen Computern oder mit externen. Ein externer Bus schließt demgemäß externe <a href="Peripherie" title="Peripherie">Peripherie</a> an die Hauptplatine an.
</p><p>Aus historischen Gründen werden heute mitunter auch interne Verbindungssysteme als „Bussystem“ bezeichnet, die keinen topologischen Bus-Aufbau besitzen – meist, weil die Vorgänger-Systeme topologisch noch echte Bus-Systeme waren. Beispielsweise wird <a href="PCIe" class="mw-redirect" title="PCIe">PCIe</a> oft als Bussystem bezeichnet (<a href="Peripheral_Component_Interconnect" title="Peripheral Component Interconnect">PCI</a> war ein echter Bus), obwohl es topologisch ein Punkt-zu-Punkt-System ist.
</p>
<div class="mw-heading mw-heading2"><h2 id="Adressierungsverfahren">Adressierungsverfahren</h2></div>
<p>Ein Bussystem ist immer so organisiert, dass zu einem bestimmten Zeitpunkt nur ein einzelner Knoten Daten auf den Bus ausgibt (bzw. Probleme bei zeitgleichem Schreiben gelöst werden). In den allermeisten Fällen sollen die Daten zu einem bestimmten anderen Knoten transportiert und von diesem weiterverarbeitet werden. (Nur in seltenen Fällen verwerten mehrere Empfangsknoten gleichzeitig die gesendeten Daten, beispielsweise bei den <a href="Controller_Area_Network" title="Controller Area Network">CAN</a>-Bussen eines Automobils oder bei <a href="Broadcast" title="Broadcast">Broadcast</a>-Nachrichten). Zur Identifizierung des Zielknotens wird eine Adressierung vorgenommen, oft über den eigens dafür eingerichteten <i>Adressbus</i>.
</p><p>Busse unterscheiden sich in der Art, wie einzelne Knoten adressiert werden. Sowohl für <a href="Parallele_Daten%C3%BCbertragung" title="Parallele Datenübertragung">parallele</a> als auch für <a href="Serielle_Daten%C3%BCbertragung" title="Serielle Datenübertragung">serielle</a> Busse gibt es eine Reihe typischer Verfahren.
</p>
<div class="mw-heading mw-heading3"><h3 id="Adressierung_in_Parallelbussystemen">Adressierung in Parallelbussystemen</h3></div>
<p>Ein einfaches Adressierungsschema sieht wie folgt aus: Lediglich eine einzige Komponente ist ein Busmaster (in der Regel ist dies der Prozessor), alle anderen sind passiv. Für jeden angebundenen Slave gibt es eine Select-Leitung, über die der Master diesen Slave zu seinem Kommunikationspartner erklärt. Die eigentlichen Daten werden anschließend über einen separaten Datenbus gesendet. Dieses Verfahren wird beispielsweise bei <a href="Serial_Peripheral_Interface" title="Serial Peripheral Interface">SPI</a> angewendet.
</p><p>Wenn jede angeschlossene Komponente über einen eigenen Adressdekoder verfügt, kann statt <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle n}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>n</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle n}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/a601995d55609f2d9f5e233e36fbe9ea26011b3b.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.395ex; height:1.676ex;" alt="{\displaystyle n}" loading="lazy"></span> separaten Select-Leitungen eine „Slave-Gerätenummer“ übertragen werden, wofür nur <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \lceil \log _{2}(n)\rceil }">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mo fence="false" stretchy="false">⌈<!-- ⌈ --></mo>
<msub>
<mi>log</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mo>⁡<!-- ⁡ --></mo>
<mo stretchy="false">(</mo>
<mi>n</mi>
<mo stretchy="false">)</mo>
<mo fence="false" stretchy="false">⌉<!-- ⌉ --></mo>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \lceil \log _{2}(n)\rceil }</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/d3c9e95ea22b8a62a76c03145b8a9dc4eb4ce344.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:9.295ex; height:2.843ex;" alt="{\displaystyle \lceil \log _{2}(n)\rceil }" loading="lazy"></span> Leitungen notwendig sind. Die einzelnen Adressdekoder entscheiden dann anhand der angelegten Gerätenummer unabhängig voneinander, ob ihre Komponente die gemeinte ist oder nicht. Dieses Verfahren wird beispielsweise bei dem <a href="Industry_Standard_Architecture" title="Industry Standard Architecture">ISA</a>- oder <a href="XT-Bus-Architektur" title="XT-Bus-Architektur">XT</a>-Bus angewendet. Beispiel: Für n = 32 mögliche Geräte wären anstatt 32 Select-Leitungen nur 5 Adressleitungen notwendig, weil 2<sup>5</sup> = 32.
</p><p>Ein anderes Prinzip arbeitet ohne eigene Adressleitungen. Entsprechend dem <a href="#Multiplexing">weiter oben dargestellten Multiplexing</a> wird zunächst die Adresse über die Leitungen übertragen. Nun kann (wie oben beschrieben) beispielsweise per Adressdekoder eine Adressierung stattfinden&nbsp;– wobei sich nun die beteiligten Partner merken müssen, ob sie angesprochen sind, da die Leitungen nach Ende der Adress-Phase anderweitig verwendet werden – zur Datenübertragung – und somit die Adresse nicht mehr auf dem Bus zur Verfügung steht. Normalerweise gibt es eine gesonderte Steuerleitung, die anzeigt, ob gerade eine Adresse oder ein Datenwort auf den Signalleitungen anliegt. Dieses Verfahren wird beispielsweise bei dem <a href="I%C2%B2C" title="I²C">I²C</a>- oder <a href="Peripheral_Component_Interconnect" title="Peripheral Component Interconnect">PCI</a>-Bus angewendet.
</p><p>Eine Abwandlung hiervon wird beim <a href="Small_Computer_System_Interface" title="Small Computer System Interface">SCSI</a>-Bus benutzt. Vor der Adressierung (im SCSI-Jargon <i>Selection Phase</i> genannt<sup id="cite_ref-SCSI123_2-0" class="reference"><a href="#cite_note-SCSI123-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>) erfolgt eine <i>Arbitration Phase.</i> Dabei meldet sich jede Komponente, die den Bus benutzen will, indem sie die Datenleitung, die ihrer Adresse <i>(SCSI-ID)</i> entspricht, mit '1' belegt. Dadurch wird zwar die Anzahl der möglichen Adressen auf die Anzahl der parallelen Busleitungen beschränkt (gegenüber <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 2^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mn>2</mn>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle 2^{n}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/8226f30650ee4fe4e640c6d2798127e80e9c160d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.381ex; height:2.343ex;" alt="{\displaystyle 2^{n}}" loading="lazy"></span> beim nichtgemultiplexten Adressbus mit <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle n}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>n</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle n}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/a601995d55609f2d9f5e233e36fbe9ea26011b3b.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.395ex; height:1.676ex;" alt="{\displaystyle n}" loading="lazy"></span> Leitungen), dafür kann jedoch ein Buskonflikt recht einfach vermieden werden, also die Situation, dass mehrere Komponenten gleichzeitig den Bus benutzen wollen: Bei SCSI hat das Gerät mit der höchsten Adresse die höchste Priorität und wird nun zum Busmaster <i>(Initiator).</i><sup id="cite_ref-SCSI123_2-1" class="reference"><a href="#cite_note-SCSI123-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p><p>Die beschriebenen Verfahren können auch miteinander kombiniert werden. Darüber hinaus ist zu beachten, dass reale <a href="Topologie_(Rechnernetz)#Bus-Topologie" title="Topologie (Rechnernetz)">Bustopologien</a> in der Regel weit komplexer sind als die hier angenommenen. So werden in einem Rechensystem in der Regel verschiedene Bustypen zu einer <i>Bushierarchie</i> miteinander verbunden, die sich in der Art der Adressierung unterscheiden und über Brücken miteinander gekoppelt sind. Derartige Brücken sind in der Lage, die Adressierung von einem Busprotokoll in das andere zu übersetzen. Auch spezielle Adressierungs-Aspekte von Multimaster-Bussen wurden hier nicht berücksichtigt.
</p>
<div class="mw-heading mw-heading3"><h3 id="Adressierung_in_seriellen_Bussystemen">Adressierung in seriellen Bussystemen</h3></div>
<p>Die auf seriellen Bussen übertragenen Daten lassen sich als <a href="Datenpaket" title="Datenpaket">Datenpakete</a> (oder auch <a href="Telegramm" title="Telegramm">Telegramme</a>) betrachten, die in mehrere Felder unterteilt sind. Ein Datenpaket enthält mindestens die Empfänger-Adresse und die zu übertragenden Daten. Angeschlossene Komponenten betrachten das Empfängerfeld und entscheiden dann, ob sie das Paket verarbeiten oder verwerfen.
</p>
<div class="mw-heading mw-heading2"><h2 id="Busmastering">Busmastering</h2></div>
<p><a href="Busmastering" title="Busmastering">Busmastering</a> bedeutet, dass der Prozessor eines <a href="Computer" title="Computer">Computersystems</a> zeitweilig die Kontrolle über den Bus an eine <a href="Adapter" title="Adapter">Adapterkarte</a>, den sogenannten Busmaster, abgibt. Dieser Busmaster adressiert in der Folge selbständig Speicher und IO-Bereiche zum Zweck des <a href="Datenaustausch" title="Datenaustausch">Datentransfers</a>. Der Busmaster operiert also als eine Art <a href="Bridge_(Netzwerk)" title="Bridge (Netzwerk)">Bridge</a> bzw. wie eine eigenständige CPU. Während also solch ein sekundärer Prozessor den peripheren Bus beherrscht, ist die CPU meist in der Lage andere Arbeiten im <a href="System" title="System">System</a> auszuführen, sofern die dafür nötigen <a href="Ressource#Informatik" title="Ressource">Ressourcen</a> im Zugriff sind. Meist ist der Bus zum Speicher hin noch teilweise nutzbar, es herrscht also Time-Sharing. Dies macht sich insbesondere bei modernen Multitasking-<a href="Betriebssystem" title="Betriebssystem">Betriebssystemen</a> durchaus positiv in der Reaktionsfähigkeit bemerkbar, wobei die Busmaster-Aktivität oftmals über ein Interrupt-Signal mit dem Betriebssystem verkoppelt ist. Die Adapterkarte hat dabei den Sinn, bestimmte Aufgaben asynchron zu anderen Tasks zu bedienen.
</p><p>Beschränkt man sich beim Bus-Mastering nicht auf Busse an der CPU eines Computers, gibt es im Bereich der Rechnernetze noch weitere Methoden zum Bus-Arbiting:
</p>
<ul><li>Beim Token-Passing hält der jeweils aktive Busmaster ein sogenanntes <i>Token</i>, das nichts anderes als eine Merkvariable (<a href="Flag_(Informatik)" title="Flag (Informatik)">Flag</a>) ist. Hat er seine Sendung abgeschlossen, reicht er dieses Token an einen bestimmten Nachbarn auf dem Bus (im Rechnernetz) weiter. Das wird vor allem in Ringbussen angewandt. Wenn man es physikalisch nicht mit einem Ringbus zu tun hat, ist es Software-Angelegenheit, die potenziellen Busteilnehmer in eine wohldefinierte und allen bekannte Reihenfolge zu bringen.</li>
<li>Andere Busse (Beispiel: <a href="Controller_Area_Network" title="Controller Area Network">CAN</a> oder <a href="Ethernet" title="Ethernet">Ethernet</a>) sind von vornherein darauf vorbereitet, dass es zu Kollisionen mehrerer Teilnehmer kommen kann, die gleichzeitig zu senden versuchen. Es ist dann deren zusätzliche Aufgabe, solche Kollisionen zu erkennen (<i>collision detection</i>) und sinnvoll zu reagieren. Es gehört zur Definition des jeweiligen Busses oder Rechnernetzes, letztere Strategie festzulegen. Es ist offensichtlich, dass so eine Methode auch für drahtlose Funkverbindungen anwendbar ist, entsprechend wird es auch eingesetzt.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Geschichtliche_Entwicklung">Geschichtliche Entwicklung</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Erste_Generation">Erste Generation</h3></div>
<p>Speicher und andere Geräte wurden am Bus an den gleichen Adressen und Datenstiften angebracht, die die CPU selbst benutzt, und zwar durch parallelen Anschluss. Die Kommunikation wurde durch die CPU gesteuert, die die Daten von den Geräten und die Blöcke aus dem Speicher liest. Alles wurde dabei durch einen zentralen Zeitgeber getaktet, der die Arbeitsgeschwindigkeit der CPU steuerte. Angeschlossene Geräte zeigten der CPU, dass sie Daten senden oder empfangen wollen, indem sie auf anderen CPU-Stiften ein Signal sendeten, was gewöhnlich durch eine Form von <a href="Interrupt" title="Interrupt">Interrupt</a> geschah. Zum Beispiel hat ein Laufwerkscontroller (siehe <a href="Controller_(Hardware)" title="Controller (Hardware)">Controller</a>) der CPU signalisiert, dass neue Daten bereit waren gelesen zu werden, worauf die CPU die Daten verschob, indem sie den Speicher an dem Anschluss las, der dem <a href="Laufwerk_(Computer)" title="Laufwerk (Computer)">Laufwerk</a> entsprach. Fast alle frühen Computer wurden auf diese Weise zusammengesetzt, beginnend mit dem <a href="S-100-Bus" title="S-100-Bus">S-100-Bus</a> im <a href="Altair_8800" title="Altair 8800">Altair</a> und bis hin zum <a href="IBM-PC" class="mw-redirect" title="IBM-PC">IBM-PC</a> in den 1980ern.
</p><p>Diese „erste Generation“ von Bussystemen litt jedoch unter dem gravierenden Nachteil, dass alles auf dem Bus mit der gleichen Geschwindigkeit arbeitet und alle Geräte sich einen einzelnen <a href="Taktsignal" title="Taktsignal">Taktgeber</a> teilen mussten. Die Arbeitsgeschwindigkeit der CPU zu erhöhen war nicht einfach, weil man die Geschwindigkeit aller angeschlossenen Geräte ebenfalls steigern musste. Dies führte zu der seltsamen Situation, dass sehr schnelle CPUs gedrosselt werden mussten, um mit anderen Geräten im Computer kommunizieren zu können. Ein anderes Problem war, dass die CPU für alle Operationen benötigt wurde, und so, wenn sie mit anderen Aufgaben beschäftigt war, der reale Datendurchsatz des Busses drastisch darunter zu leiden hatte. Ein anderes praktisches Problem war, dass diese frühen Bussysteme schwierig zusammenzustellen waren, da sie viele <a href="Jumper_(Elektrotechnik)" title="Jumper (Elektrotechnik)">Jumper</a> erforderten, um die verschiedenen Betriebsparameter einzustellen.
</p>
<div class="mw-heading mw-heading3"><h3 id="Zweite_Generation">Zweite Generation</h3></div>
<p>Bussysteme der „zweiten Generation“ wie <a href="NuBus" title="NuBus">NuBus</a> waren auf die Lösung einiger dieser Probleme gerichtet. Sie teilten den Computer gewöhnlich in zwei „Welten“, die CPU und den Speicher auf der einen Seite und die anzuschließenden Geräte auf der anderen, mit einem Bus<a href="Controller_(Hardware)" title="Controller (Hardware)">controller</a> dazwischen. Dies erlaubte es, die Geschwindigkeit der CPU zu erhöhen, ohne den Bus zu beeinflussen. Dadurch wurde auch viel von der Belastung für das Verschieben der Daten aus der CPU heraus und in die Karten und den Controller verringert, weil Geräte über den Bus ohne Einschaltung der CPU miteinander sprechen konnten. Dieses führte zu viel besserer tatsächlicher Leistung in der Praxis, erforderte aber auch eine viel höhere Komplexität der im Computer installierten Geräte. Weiter gingen diese Bussysteme das Geschwindigkeitsproblem an, indem sie einfach einen größeren Datentransportweg wählten, und so von den 8-bit parallelen Bussen der ersten Generation zu 16 oder 32-bit in der zweiten übergingen. Eine weitere Verbesserung bestand darin, dass Softwareeinstellungen hinzugefügt wurden, die die Zahl der Jumper reduzierten oder diese ersetzten.
</p><p>Gleichwohl hatten die neueren Systeme eine negative Eigenschaft, die sie mit ihren früheren Vettern teilten: alles, was am Bus hing (außer der CPU), musste mit der gleichen Geschwindigkeit arbeiten. Da die CPU jetzt isoliert war und man ihre Geschwindigkeit ohne Probleme erhöhen könnte, stieg die Arbeitsgeschwindigkeit der CPUs und des Speichers fortlaufend viel schneller an als die der Bussysteme, mit denen sie zusammenarbeiteten. Das Resultat war, dass die Busgeschwindigkeiten jetzt sehr viel langsamer waren, als für ein modernes System nötig, und die Maschinen hungerten nach Daten, weil sie viel schneller arbeiteten, als Daten hin und her transportiert werden konnten. Ein besonders typisches Beispiel für dieses Problem war, dass Videokarten sogar den neueren Bussystemen wie <a href="Peripheral_Component_Interconnect" title="Peripheral Component Interconnect">PCI</a> schnell davonliefen. So wich man für Grafikkarten vom Bus-Konzept ab und führte einen exklusiven, deutlich schnelleren Anschluss (Port) für die Grafikkarte ein, den <a href="Accelerated_Graphics_Port" title="Accelerated Graphics Port">Accelerated Graphics Port</a> (AGP). Der nächste Schritt und Stand der Technik Ende 2005 in dieser Entwicklung ist PEG, <a href="PCI_Express" title="PCI Express">PCI Express</a> for Graphics mit 16 Lanes.
</p><p>Während dieser Periode fing auch eine zunehmende Anzahl von externen Geräten an, ihre eigenen Bussysteme einzusetzen. Als die Laufwerke zuerst eingeführt wurden, hat man sie mit einer Einsteckkarte an den Bus angeschlossen. Das ist der Grund, warum Computer so viele mit dem Bus verbundene <a href="Steckplatz" title="Steckplatz">Steckplätze</a> (Slots) haben. In den 1980er und 1990er wurden deswegen neue Systeme wie <a href="Small_Computer_System_Interface" title="Small Computer System Interface">SCSI</a> und <a href="ATA/ATAPI" title="ATA/ATAPI">ATA</a> eingeführt, und so blieben die meisten Slots in den modernen Systemen leer. Heute gibt es in einem typischen PC an die fünf unterschiedliche Bussysteme, um die verschiedenen Geräte zu betreiben.
</p><p>Später ging man dazu über, das Konzept des lokalen Busses im Vergleich zum externen Bus zu bevorzugen. Ersteres bezieht sich auf Bussysteme, die entworfen wurden, um mit internen Geräten, wie <a href="Grafikkarte" title="Grafikkarte">Grafikkarten</a> zu arbeiten, letzteres um externe Geräte wie <a href="Scanner_(Datenerfassung)" title="Scanner (Datenerfassung)">Scanner</a> anzuschließen. Diese Definition war immer ungenau: IDE ist der Verwendungsart nach ein externer Bus; er wird aber fast immer innerhalb des Computers zu finden sein.
</p>
<div class="mw-heading mw-heading3"><h3 id="Dritte_Generation">Dritte Generation</h3></div>
<p>Busse der „dritten Generation“, wie <a href="HyperTransport" title="HyperTransport">HyperTransport</a> und <a href="InfiniBand" title="InfiniBand">InfiniBand</a> gewinnen zunehmend an Bedeutung. Sie zeichnen sich in der Regel durch sehr hohe Geschwindigkeiten aus, die benötigt werden, um Speicher und Videokarten zu unterstützen. Gleichzeitig ermöglichen sie auch niedrigere Geschwindigkeiten, um die Kommunikation mit langsameren Geräten, wie Laufwerken zu unterstützen. Diese Busse sind äußerst vielseitig und können sowohl intern in einem Computer verwendet werden als auch verschiedene Computer miteinander verbinden. Sie bieten flexible physische Anschlüsse und ermöglichen eine effiziente Datenübertragung.
</p><p>Dieses kann zu komplizierten Problemen führen, wenn es darum geht, unterschiedliche Anfragen zu bedienen, was dazu führt, dass die Software im Vergleich zum eigentlichen <a href="Elektronikentwickler" title="Elektronikentwickler">Hardwaredesign</a> in den Vordergrund rückt. Im Allgemeinen neigen die Busse der dritten Generation dazu, mehr wie ein <a href="Rechnernetz" title="Rechnernetz">Netzwerk</a> als wie ein Bus (im traditionellen Verständnis) auszusehen, mit mehr Bedarf an Protokollinformationen als bei früheren Systemen, und der Möglichkeit, dass verschiedene Geräte den Bus gleichzeitig benutzen können.
</p>
<div class="mw-heading mw-heading2"><h2 id="Bussysteme">Bussysteme</h2></div>

<div class="mw-heading mw-heading3"><h3 id="Datenbus">Datenbus</h3></div>
<p>Ein Datenbus überträgt Daten zwischen Komponenten innerhalb eines Computers oder zwischen verschiedenen Computern. Anders als bei einem Anschluss, bei dem ein Gerät mit einem anderen Gerät über eine oder mehrere Leitungen verbunden ist, kann ein Bus mehrere Peripheriegeräte über den gleichen Satz von Leitungen miteinander verbinden. Im Gegensatz zum Adressbus oder Steuerbus ist der Datenbus <a href="Bidirektional" title="Bidirektional">bidirektional</a> (wenn man vom Adressbus bei <a href="Speicherdirektzugriff" class="mw-redirect" title="Speicherdirektzugriff">DMA</a>-Betrieb absieht).
</p><p>Die Bezeichnungen 4-Bit-, 8-Bit-, 16-Bit-, 32-Bit- oder 64-Bit-CPU bezeichnen in der Regel die Breite des internen Datenpfades einer solchen CPU, die normalerweise mit der (Allzweck-)<a href="Register_(Prozessor)" title="Register (Prozessor)">Register</a>- und Verarbeitungsbreite der <a href="Arithmetisch-logische_Einheit" title="Arithmetisch-logische Einheit">ALU</a> übereinstimmt. Zumeist ist der interne Datenpfad genauso breit wie der externe Datenbus. Eine Ausnahme ist beispielsweise die Intel-CPU <a href="Intel_8088" title="Intel 8088">i8088</a>. Hier ist der interne Datenpfad 16&nbsp;Bit breit, während der externe Datenbus lediglich 8&nbsp;Bit breit ist. Auf Grafikkarten finden sich auch noch höhere Busbreiten, um die Verarbeitungsgeschwindigkeit zu steigern.
</p><p>Die Bezeichnung als Datenbus wird in mehrfachem Zusammenhang verwendet:
</p>
<ul><li>mit Betonung auf <i>Daten</i>: zur Abgrenzung gegenüber gemeinsamen Anschlüssen, wie der Stromversorgung</li>
<li>mit Betonung auf <i>Bus</i>: zur Unterscheidung der Topologie, wie z.&nbsp;B. direkten Punkt-zu-Punkt-Verbindungen</li>
<li>bei parallelen Bussen: zur Unterscheidung von Adress- oder Steuerleitungen</li></ul>
<div class="mw-heading mw-heading3"><h3 id="Adressbus">Adressbus</h3></div>
<p>Ein Adressbus ist im Gegensatz zum Datenbus ein Bus, der nur <a href="Speicheradresse" title="Speicheradresse">Speicheradressen</a> überträgt. Die Busbreite, also die Anzahl der Verbindungsleitungen, bestimmt dabei, wie viel Speicher direkt adressiert werden kann. Wenn ein Adressbus <i>n</i> Adressleitungen hat, können <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 2^{n}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mn>2</mn>
<mrow class="MJX-TeXAtom-ORD">
<mi>n</mi>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle 2^{n}}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/8226f30650ee4fe4e640c6d2798127e80e9c160d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:2.381ex; height:2.343ex;" alt="{\displaystyle 2^{n}}" loading="lazy"></span> <a href="Halbleiterspeicher#Speicherzelle" title="Halbleiterspeicher">Speicherstellen</a> direkt adressiert werden. Bei einem Bus mit 32 Adressleitungen können also <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \textstyle 2^{32}=4\,294\,967\,296}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mstyle displaystyle="false" scriptlevel="0">
<msup>
<mn>2</mn>
<mrow class="MJX-TeXAtom-ORD">
<mn>32</mn>
</mrow>
</msup>
<mo>=</mo>
<mn>4</mn>
<mspace width="thinmathspace"></mspace>
<mn>294</mn>
<mspace width="thinmathspace"></mspace>
<mn>967</mn>
<mspace width="thinmathspace"></mspace>
<mn>296</mn>
</mstyle>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \textstyle 2^{32}=4\,294\,967\,296}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/97baaa2eac66f12ca5eedd81122608f99329cd7d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:18.923ex; height:2.676ex;" alt="{\displaystyle \textstyle 2^{32}=4\,294\,967\,296}" loading="lazy"></span>&nbsp;<a href="Byte" title="Byte">Byte</a> (eine Speicherzelle = 8&nbsp;<a href="Bit" title="Bit">Bit</a>) = 4&nbsp;<a href="Byte#Binärpräfixe" title="Byte">Gibibyte</a> (GiB) angesprochen werden. Bei einem 64-Bit-Adressbus können sogar <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \textstyle 2^{64}=18\,446\,744\,073\,709\,551\,616}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mstyle displaystyle="false" scriptlevel="0">
<msup>
<mn>2</mn>
<mrow class="MJX-TeXAtom-ORD">
<mn>64</mn>
</mrow>
</msup>
<mo>=</mo>
<mn>18</mn>
<mspace width="thinmathspace"></mspace>
<mn>446</mn>
<mspace width="thinmathspace"></mspace>
<mn>744</mn>
<mspace width="thinmathspace"></mspace>
<mn>073</mn>
<mspace width="thinmathspace"></mspace>
<mn>709</mn>
<mspace width="thinmathspace"></mspace>
<mn>551</mn>
<mspace width="thinmathspace"></mspace>
<mn>616</mn>
</mstyle>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle \textstyle 2^{64}=18\,446\,744\,073\,709\,551\,616}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/75c44ae9db130f7ae4fb1d86641ef43fca08b46d.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:31.709ex; height:2.676ex;" alt="{\displaystyle \textstyle 2^{64}=18\,446\,744\,073\,709\,551\,616}" loading="lazy"></span>&nbsp;Byte = 16&nbsp;<a href="Byte#Binärpräfixe" title="Byte">Exbibyte</a> (EiB) angesprochen werden. In der Regel ist der Adressbus einer <a href="64-Bit-Architektur" title="64-Bit-Architektur">64-Bit-Architektur</a> physisch nicht in dieser Breite ausgeführt (s.&nbsp;o. bei <a href="#Multiplexing">Multiplexing</a>). Die Angabe 64-Bit-Bus bezieht sich eher auf die Breite des Datenbusses. Allerdings kann ein 64-Bit-Datum als Adresse einer anderen Speicherstelle aufgefasst werden (<a href="Adressierung_(Rechnerarchitektur)" title="Adressierung (Rechnerarchitektur)">indirekte Adressierung</a>).
</p><p>Dieser Bus ist <a href="Unidirektional" title="Unidirektional">unidirektional</a> und wird vom jeweiligen <a href="Busmastering" title="Busmastering">Busmaster</a> (s.&nbsp;a. oben) angesteuert. Letzterer ist meistens die CPU, aber vor allem <a href="Speicherdirektzugriff" class="mw-redirect" title="Speicherdirektzugriff">DMA</a>-fähige Bausteine können diesen Bus auch übernehmen, wenn sie aktiv werden. Bei 8- und 16-Bit-Prozessorarchitekturen ist der Adressbus oft breiter als die Architekturbreite (Beispiel: <a href="80286" class="mw-redirect" title="80286">80286</a>: 16-Bit-Architektur mit 24-Bit-Adressbus), auch 32-Bit-Architekturen besitzen mitunter einen breiteren Adressbus. Bei 64-Bit-Architekturen ist der Adressbus meistens kleiner (44–52 Bit) als die Architekturbreite.
</p>
<div class="mw-heading mw-heading3"><h3 id="Steuerbus_(Kontrollbus)"><span id="Steuerbus_.28Kontrollbus.29"></span>Steuerbus (Kontrollbus)</h3></div>
<p>Der Steuerbus (unidirektional) ist ein Teil des Bussystems (bidirektional), welcher die Steuerung (englisch <i>control</i>) des Bussystems bewerkstelligt. Hierzu zählen unter anderem die Leitungen für die Lese-/Schreib-Steuerung (Richtung auf dem Datenbus), Interrupt-Steuerung, Buszugriffssteuerung, der Taktung (falls ein Bustakt erforderlich ist), Reset- und Statusleitungen. Welche der Leitungen in einem Bus eingesetzt sind, ist von der Art und Struktur des Busses abhängig.
In Multi-Master-Systemen, in denen mehr als ein Subsystem die Buskontrolle übernehmen kann, ist ein <a href="Arbiter" title="Arbiter">Arbiter</a> als Entscheidungsinstanz erforderlich.
</p>
<div class="mw-heading mw-heading3"><h3 id="CPU-interner_Bus">CPU-interner Bus</h3></div>
<p>Der interne CPU-Bus (englisch: internal CPU bus) dient zur Kommunikation der internen Einheiten des Prozessors (zwischen Leitwerk, Rechenwerk und deren Registern), gegebenenfalls auch mit dem L1-Cache.
</p>
<div class="mw-heading mw-heading3"><h3 id="CPU-externer_Bus">CPU-externer Bus</h3></div>
<p>Der externe CPU-Bus (englisch: external CPU bus) verbindet Prozessor(en), (L2-)Cache, Arbeitsspeicher und Peripheriebus-Schnittstelle, auch <a href="Front_Side_Bus" title="Front Side Bus">Front Side Bus</a> (FSB) genannt, oder alternativ nur mit dem <a href="Chipsatz" title="Chipsatz">Chipsatz</a> (oder dessen <a href="Northbridge" title="Northbridge">Northbridge</a>), wo jene externen Elemente angeschlossen sind.
</p>
<div class="mw-heading mw-heading3"><h3 id="Rechner-interne_Busse">Rechner-interne Busse</h3></div>
<p>Diese Busse verbinden Komponenten innerhalb eines Rechners, also zum Beispiel die CPU mit der Grafikkarte und mit diversen Ein-/Ausgabe-Komponenten.
</p>
<div class="mw-heading mw-heading3"><h3 id="Rechner-externe_Busse">Rechner-externe Busse</h3></div>
<p>Diese Busse verbinden den Rechner mit externen <a href="Peripherieger%C3%A4t" title="Peripheriegerät">Peripheriegeräten</a>. Es sind hier nur solche Schnittstellen gemeint, die wirklich Bus-Charakter aufweisen, also den Anschluss von mehreren externen Geräten gleichzeitig erlauben, beispielsweise der <a href="Small_Computer_System_Interface" title="Small Computer System Interface">SCSI-Bus</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Anwendungsbereiche">Anwendungsbereiche</h2></div>
<p>Bussysteme finden Anwendung insbesondere innerhalb von <a href="Computer" title="Computer">Computern</a> und zur Verbindung von Computern mit <a href="Peripherieger%C3%A4t" title="Peripheriegerät">Peripheriegeräten</a>, aber auch in der Ansteuerung von <a href="Maschine" title="Maschine">Maschinen</a> (Feldbusse).
</p><p>In <a href="Automobil" title="Automobil">Automobilen</a> werden Bussysteme, z. B. der <a href="CAN-Bus" class="mw-redirect" title="CAN-Bus">CAN-Bus</a>, zur Verbindung der einzelnen elektronischen <a href="Steuerger%C3%A4t" title="Steuergerät">Steuergeräte</a> eines <a href="Fahrzeug" title="Fahrzeug">Fahrzeugs</a> genutzt. Durch diese Maßnahme soll die Ausfall- und Störsicherheit erhöht werden. Zudem können weitere elektronische Systeme leichter integriert werden und das Updaten neuer <a href="Software" title="Software">Software</a> gestaltet sich einfacher. Ein Bussystem macht es außerdem möglich, ein Fahrzeug zum „Mobile Office“ umzuwandeln.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><p>Immer häufiger werden Bussysteme auch in der <a href="Geb%C3%A4udetechnik" class="mw-redirect" title="Gebäudetechnik">Gebäudetechnik</a> verwendet, z.&nbsp;B. der <a href="Europ%C3%A4ischer_Installationsbus" class="mw-redirect" title="Europäischer Installationsbus">Europäische Installationsbus</a> (EIB). Mithilfe des Bussystems ist die Steuerung von <a href="Beleuchtung" title="Beleuchtung">Beleuchtung</a>, Fenster- und Türüberwachung, <a href="Heizung" title="Heizung">Heizungen</a>, <a href="Klimager%C3%A4t" class="mw-redirect" title="Klimagerät">Klimageräten</a> und anderer Geräte eines Gebäudes möglich.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Der Einbau eines Bussystems sollte möglichst bereits bei der Gebäudeplanung berücksichtigt werden, da das System, vor allem die notwendigen Kabel und Leitungen, viel Platz benötigt. Ein nachträglicher Einbau könnte mit erheblichen baulichen Maßnahmen verbunden sein.
</p><p>Seit Mitte der 1990er-Jahre sind Bussysteme auch in der Gebäude- und Türkommunikation zunehmend verbreitet. Diese Systeme operieren meist unabhängig von der restlichen Gebäudeautomation und sind somit häufig auch in Wohnhäusern mit niedrigerem Ausbaustandard zu finden. Vorteile gegenüber konventionellen Türsprechstellen sind der bedeutend kleinere Verdrahtungs- und Installationsaufwand, vereinfachte Störungssuche und einfache Erweiterbarkeit des gesamten Systems. Bestehende konventionelle Systeme lassen sich einfach umrüsten.
</p><p>In Industrieanlagen werden <a href="Feldbus" title="Feldbus">Feldbusse</a> benutzt.
</p>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="Busklemme" title="Busklemme">Busklemme</a></li>
<li><a href="Host-Bus-Adapter" title="Host-Bus-Adapter">Host-Bus-Adapter</a></li>
<li><a href="Verbindungsnetzwerk" title="Verbindungsnetzwerk">Verbindungsnetzwerk</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Literatur">Literatur</h2></div>
<ul><li><a href="Werner_Kriesel" title="Werner Kriesel">Werner Kriesel</a>; <a href="Tilo_Heimbold" title="Tilo Heimbold">Tilo Heimbold</a>; Dietmar Telschow: <i>Bustechnologien für die Automation – Vernetzung, Auswahl und Anwendung von Kommunikationssystemen (mit CD-ROM).</i> Hüthig Verlag, Heidelberg 1998, 2. Auflage 2000, ISBN 3-7785-2778-9.</li>
<li>Franz-Josef Lintermann, Udo Schaefer, Walter Schulte-Göcking, Klaas Gettner: <cite style="font-style:italic">Einfache IT-Systeme. Lehr-/Fachbuch</cite>. 5, 1. korrigierter Nachdruck Auflage. Bildungsverlag EINS, 2008, ISBN 978-3-8237-1140-7, <span style="white-space:nowrap">S.<span style="display:inline-block;width:.2em">&nbsp;</span>57–61</span>.<span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rfr_id=info:sid/de.wikipedia.org:Bus+%28Datenverarbeitung%29&amp;rft.au=Franz-Josef+Lintermann%2C+Udo+Schaefer%2C+Walter+Schulte-G%C3%B6cking%2C+...&amp;rft.btitle=Einfache+IT-Systeme.+Lehr-%2FFachbuch&amp;rft.date=2008&amp;rft.edition=5%2C+1.+korrigierter+Nachdruck&amp;rft.genre=book&amp;rft.isbn=9783823711407&amp;rft.pages=57-61&amp;rft.pub=Bildungsverlag+EINS" style="display:none">&nbsp;</span></li>
<li>Werner Zimmermann und Ralf Schmidgall: <i>Bussysteme in der Fahrzeugtechnik – Protokolle, Standards und Softwarearchitektur.</i> 5. Auflage, Springer Vieweg, 2014, ISBN 978-3-658-02418-5.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<div class="sisterproject" style="margin:0.1em 0 0 0;"><div class="noresize noviewer" style="display:inline-block; line-height:10px; min-width:1.6em; text-align:center;" aria-hidden="true" role="presentation"><span class="mw-default-size" typeof="mw:File"><span title="Commons"></span></span></div><b><span class=""><a class="external text" href="https://commons.wikimedia.org/wiki/Category:Computer_buses?uselang=de"><span lang="en">Commons</span>: Computerbusse</a></span></b>&nbsp;– Sammlung von Bildern, Videos und Audiodateien</div>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-IEV_351-32-10-1"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-IEV_351-32-10_1-0">a</a></sup> <sup><a href="#cite_ref-IEV_351-32-10_1-1">b</a></sup></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="http://www.electropedia.org/iev/iev.nsf/display?openform&amp;ievref=351-56-10"><i>IEC 60050 – International Electrotechnical Vocabulary – Details for IEV number 351-56-10.</i></a> International Electrotechnical Commission,<span class="Abrufdatum"> abgerufen am 31.&nbsp;Januar 2014</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3ABus+%28Datenverarbeitung%29&amp;rft.title=IEC+60050+%E2%80%93+International+Electrotechnical+Vocabulary+%E2%80%93+Details+for+IEV+number+351-56-10&amp;rft.description=IEC+60050+%E2%80%93+International+Electrotechnical+Vocabulary+%E2%80%93+Details+for+IEV+number+351-56-10&amp;rft.identifier=http%3A%2F%2Fwww.electropedia.org%2Fiev%2Fiev.nsf%2Fdisplay%3Fopenform%26ievref%3D351-56-10&amp;rft.publisher=International+Electrotechnical+Commission">&nbsp;</span></span>
</li>
<li id="cite_note-SCSI123-2"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-SCSI123_2-0">a</a></sup> <sup><a href="#cite_ref-SCSI123_2-1">b</a></sup></span> <span class="reference-text">Bernhard Huber, Georg Schnurer: <i>SCSI 1-2-3 – Pfade durch den SCSI-Dschungel,</i> <a href="C%E2%80%99t" title="C’t">c’t – Magazin für Computertechnik</a> 11/1993, S. 106 ff., im <a rel="nofollow" class="external text" href="https://www.heise.de/select/ct/archiv/1993/11/seite-106">Online-Archiv</a> (kostenpflichtig)</span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://userpages.uni-koblenz.de/~zoebel/ws2004/Bussysteme.pdf">„Bussysteme im Automobil“ Ausarbeitung zum Seminarvortrag von Daniel Schüller</a> (PDF; 532&nbsp;kB) Universität Koblenz, abgerufen am 16. Januar 2013</span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r261891140">
/* start https://de.wikipedia.org/ */


.mw-parser-output .webarchiv-memento a{color:inherit}


/* end https://de.wikipedia.org/ */
</style><a rel="nofollow" class="external text" href="https://web.archive.org/web/20130921061316/http://www.baunetzwissen.de/standardartikel/Tageslicht_Bussysteme-fuer-die-Gebaeudeautomation_167340.html">Bussysteme für die Gebäudeautomation – Tageslicht – Gebäudetechnik</a> (<span class="webarchiv-memento"><a href="Webarchivierung#Begrifflichkeiten" title="Webarchivierung">Memento</a></span> vom 21. September 2013 im <i><a href="Internet_Archive" title="Internet Archive">Internet Archive</a></i>), Baunetzwissen, abgerufen am 16. Januar 2013</span>
</li>
</ol>
<div class="hintergrundfarbe1 rahmenfarbe1 navigation-not-searchable normdaten-typ-s" style="border-style: solid; border-width: 1px; clear: left; margin-bottom:1em; margin-top:1em; padding: 0.25em; overflow: hidden; word-break: break-word; word-wrap: break-word;" id="normdaten">
<div style="display: table-cell; vertical-align: middle; width: 100%;">
<div>
Normdaten&nbsp;(Sachbegriff): <a href="Gemeinsame_Normdatei" title="Gemeinsame Normdatei">GND</a>: <span class="-print"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4122982-4">4122982-4</a></span> </div>
</div></div></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2025-11-05" href="https://de.wikipedia.org/wiki/?title=Bus_(Datenverarbeitung)&amp;oldid=261270479">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>

</body></html>